//
//  YBRedEnvelopeCellData.m
//  yibeilive
//
//  Created by Itisnotthathard on 2022/11/18.
//

#import "YBRedEnvelopeCellData.h"

@implementation YBRedEnvelopeCellData

//重写父类的 getCellData: 方法。用于把 V2TIMMessage 转换成消息列表 Cell 的绘制数据 TUILinkCellData。
+ (TUIMessageCellData *)getCellData:(V2TIMMessage *)message {
    NSDictionary *param = [NSJSONSerialization JSONObjectWithData:message.customElem.data options:NSJSONReadingAllowFragments error:nil];
    YBRedEnvelopeCellData *cellData = [[YBRedEnvelopeCellData alloc] initWithDirection:message.isSelf ? MsgDirectionOutgoing : MsgDirectionIncoming];
    cellData.innerMessage = message;
    cellData.message = param[@"message"];
    cellData.userid = param[@"userid"];
    cellData.nick = param[@"nick"];
    cellData.pic = param[@"pic"];
    cellData.messageType = param[@"messageType"];
    cellData.TXuserId = param[@"TXuserId"];
    cellData.redBagId = param[@"redBagId"];
    return cellData;
}

//重写父类的 getDisplayString: 方法。用于把 V2TIMMessage 转换成会话列表 lastMsg 的展示文本信息。会话列表 lastMsg 展示文本指的是当用户停留在会话列表，每个会话 cell 会显示当前会话最后一条消息。
+ (NSString *)getDisplayString:(V2TIMMessage *)message {
    return @"[红包]";
}

//重写父类的 contentSize： 方法，用于计算 cellData 内容所占绘制区域的大小。
- (CGSize)contentSize {
    return CGSizeMake(kScale(206), kScale(77));
}

@end
